Method and apparatus for developing fault codes for complex systems based on historical data

ABSTRACT

A method of developing fault codes for complex systems based on historical data that in one aspect is a software program arranged to be installed and to operate on a processor to process the historical data in order to facilitate development of the fault codes, the software program resulting in the processor performing the method including: grouping the historical data into a plurality of observations and a plurality of repairs; analyzing the plurality of repairs to determine associated observation signatures, each of the observation signatures being one or more of the observations; and assigning a fault code to each observation signature.

FIELD OF THE INVENTION

This invention relates to systems for maintenance of complex systems andmore specifically methods and apparatus for developing fault codes fromhistorical data related to such systems.

BACKGROUND OF THE INVENTION

Complex systems comprising tens or hundreds of inter-related andinter-operating systems and subsystems, many which may be complex inthere own right, present unique maintenance and service challenges.Examples of such complex systems include factories, major buildings,ocean going vessels, power generation plants, and aircraft to name afew. Complex systems and the inter-related and inter-operational natureof the systems and subsystems thereof often require equally complex anddisciplined maintenance and service programs. These programs usuallyinclude documentation or records of observed or indicated irregularitiesor discrepancies and actions taken or services performed pursuant toresolution or prevention of such irregularities and discrepancies. Thisdocumentation is usually filled out, completed, or recorded by theservice and maintenance personnel.

In the aircraft industry fault codes have more recently come to be usedto provide a mechanism to summarize the set of symptoms or syndrome thatis reported for each distinct aircraft fault condition. A fault codetypically corresponds to a fault condition in a single system on theaircraft and can be used as the basis of fault isolation, materialplanning and deferral/criticality analysis. Fault Codes are a criticalelement of a “Fault Model” for an aircraft that can be used to supportan automated diagnostic and maintenance support system.

For example Honeywell International Inc. builds an automated expertsystem called “AMOSS” (Aircraft Maintenance and Operations SupportSystem) that uses fault codes as a standard element in structuring themaintenance activities for an airline and aircraft within that airline.For aircraft designed after the middle of the 1980's, the maintenancedocuments developed by the manufacturer include Fault Codes. However,aircraft designed prior to the middle of the 1980's (a large percentageof aircraft presently flying) did not include the Fault Code as a partof their maintenance documentation.

For those aircraft and other complex systems that have not employedfault codes or some similar standardization technique, the ability tomodify or standardize maintenance and service programs based onhistorical data is limited since different service technicians arelikely to describe similar observations and actions in different termsthus limiting the usefulness of historical information. The airlineshave attempted to overcome this limitation through training to instructtheir maintenance and service personnel to use various faultclassification and reporting strategies for older aircraft. This addscomplexity to the maintenance and service procedures, increases costs,and reduces the precision of planning and cost analysis activities.Clearly a need exists for methods and apparatus for developing standardfault codes based on historical data.

SUMMARY OF THE INVENTION

The present invention concerns a method of developing fault codes forcomplex systems based on historical data where one aspect of this methodis a software program comprising software instructions that wheninstalled and operating on a processor results in the processorperforming the method. The method includes grouping the historical datainto a plurality of observations and a plurality of repairs; analyzingthe plurality of repairs to determine associated observation signatures,each of the observation signatures being one or more of theobservations; and assigning a fault code to each observation signature.Preferably grouping the historical data into the plurality ofobservations includes assigning a standard observation to similardiscrepancies derived from the historical data and assigning a standardrepair to similar corrective actions derived from the historical dataand maintaining a first reference to the historical data with eachstandard observation and a second reference to the historical data witheach standard repair.

Analyzing the plurality of repairs may further include discoveringrelationships between one or more of the standard observations and thestandard repairs when the first reference to the historical data and thesecond reference to the historical data are common between the standardobservation and the standard repair. In this instance analyzing theplurality of repairs to determine associated observation signatures mayincludes grouping each of the standard observations with an associatedone of the standard repairs when the relationship is discovered. Thenassigning the fault code results in each unique observation signaturebeing assigned a unique fault code and each standard repair with thesame observation signature being linked to the same fault code.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying figures, where like reference numerals refer toidentical or functionally similar elements throughout the separate viewsand which together with the detailed description below are incorporatedin and form part of the specification, serve to further illustratevarious embodiments and to explain various principles and advantages allin accordance with the present invention.

FIG. 1 depicts, in a simplified and exemplary form, a flow chart of amethod of developing fault codes according to the present invention;

FIG. 2 depicts, in a simplified and representative form, a log pageexemplifying an occurrence of historical data;

FIG. 3A to FIG. 3E in tabular form illustrates in a simplified andexemplary manner creating standard observations according to the instantinvention;

FIG. 4 shows a flow chart of a preferred method of grouping or linkinghistorical information with standard repairs and observations;

FIGS. 5A and 5B in tabular and graphical form, respectively, illustratesin a simplified and exemplary manner creating relationships betweenstandard repairs and standard observation according to the instantinvention;

FIG. 6 depicts the resultant relationships between observations andrepairs from FIGS. 5A and 5B;

FIG. 7 depicts in tabularized form Observation signatures suitable foruse in the flow chart of FIG. 1;

FIG. 8 depicts a diagram of assigned fault codes resulting from the FIG.1 method; and

FIG. 9 depicts a computer based system for developing fault codesaccording to the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENT

In overview form the present disclosure concerns and relates to systemsfor maintenance of complex systems and more specifically methods andapparatus for developing fault codes from historical data related tosuch systems. More particularly various inventive concepts andprinciples embodied in methods and apparatus for the systematicdevelopment of such standardized fault codes are discussed. The complexsystems of particular interest are those associated with aircraft andparticularly aircraft designed prior to the mid 1980s, however theconcepts and principles discussed herein will be equally applicable toother complex systems.

As further discussed below various inventive principles and combinationsthereof are advantageously employed to essentially mine or producestandardized data from historical data, thus alleviating variousproblems, such as imprecise service and maintenance actions anddescriptions and the excess costs associated with known systems whilestill facilitating quality service and maintenance activities and moreprecise cost estimates that will result from more systematic forecastsof requisite actions that are enabled by standardized fault codes.

The instant disclosure is provided to further explain in an enablingfashion the best modes of making and using various embodiments inaccordance with the present invention. The disclosure is further offeredto enhance an understanding and appreciation for the inventiveprinciples and advantages thereof, rather than to limit in any mannerthe invention. The invention is defined solely by the appended claimsincluding any amendments made during the pendency of this applicationand all equivalents of those claims as issued.

It is further understood that the use of relational terms, if any, suchas first and second, top and bottom, and the like are used solely todistinguish one from another entity or action without necessarilyrequiring or implying any actual such relationship or order between suchentities or actions. Much of the inventive functionality and many of theinventive principles are implemented with or in software programs orinstructions. It is expected that one of ordinary skill, notwithstandingpossibly significant effort and many design choices motivated by, forexample, available time, current technology, and economicconsiderations, when guided by the concepts and principles disclosedherein will be readily capable of generating such software instructionsand programs with minimal experimentation. Therefore further discussionof such software, if any, will be limited in the interest of brevity andminimization of any risk of obscuring the principles and concepts inaccordance with the present invention.

Referring to FIG. 1 a simplified and exemplary flow chart of a method100 of developing fault codes from historical data for complex systemsis depicted. This method is suitable for implementation in software aspart of an automated maintenance and repair support program for usewithin a, preferably computer based system therefore. In part the methodresults in construction of or yields a relational database for usewithin such a system. The method begins at 101 where historical data,specifically log book pages from aircraft maintenance records or similardata from maintenance and service records for other complex systems isreviewed, analyzed, and parsed or broken down into relevant constituentelements that are likely system specific. This will be discussed belowin further detail for aircraft historical date with reference to FIG. 2.

Given this historical data, step 103 depicts grouping the historicaldata or relevant portion thereof into a plurality of repairs or morespecifically a group of one or more corrective actions where thegrouping function places similar corrective actions derived from thehistorical data in the same group or repair. Step 105 shows assigning astandard repair such as REPAIR 1 to each of the plurality of repairs orgroups of corrective actions so derived. Step 107 shows grouping thehistorical data or relevant portion thereof into a plurality ofobservations where each of the plurality of observations is a group ofsimilar discrepancies derived from the historical data. Step 109 depictsassigning a standard observation, such as OBSERVATION 1 to each of theplurality of observations so derived. In the grouping procedures it ispreferred that a reference to the historical data, specifically a logpage number for the aircraft example, is maintained with each correctiveaction that is a member of a REPAIR and each discrepancy that is amember of an OBSERVATION. The grouping process allows collections ofsimilar discrepancies and corrective actions to be normalized into astandard textual description. For example, a common corrective actionwould be to replace the bleed air valve. This may have been writtenseveral different ways in the corrective action text of various logbookpages (i.e. R&R BLD AIR VLV, REPLACED BLEED VLV, etc). The groupingactivity is preferably performed using known techniques utilizing aMaintenance Manual Table of Contents (MM TOC) section titles as StandardRepairs and a combination of ATA Hierarchy nodes and MM TOC sectiontitles for Standard Observations. Log page discrepancies and correctiveactions are then mapped to Standard Observations and Standard Repairsrespectively. Optionally, the results of this process are presented to asubject matter expert or experienced engineer for confirmation of thederived relationships. To enhance the quality of Standard Observations(e.g. AIR CONDITIONING), subject matter experts may be used to addPosition, Symptom and Fault Condition information. Position informationmay be placed as a prefix to the Standard Observation (e.g. LEFT, RIGHT,Etc). Symptom information may be used to further describe the failuremode (e.g. INOP, ILLUMINATED, Etc). Fault Conditions describe theaircraft operational mode at the time of failure (e.g. IN FLIGHT, ONGROUND, Etc). A fully normalized Standard Observation could look asfollows: LEFT AIR CONDITIONING INOP IN FLIGHT. Note that steps 103through 109 will be discussed in more detail below with reference toFIGS. 3A-3E and FIG. 4.

Step 111 analyzes the plurality of repairs to determine associatedobservation signatures where each of the observation signatures includesone or more of the observations. This includes creating relationshipsbetween the plurality of observations and the plurality of repairsutilizing the historical data or reference thereto, such as one or morelogbook page numbers that are common between an observation and arepair. This will be further discussed below with reference to FIG. 5A,FIG. 5B, and FIG. 6. This results in or allows a grouping of each of theplurality of observations with an associated one of the plurality ofrepairs to provide a repair signature for each repair that is equal tothe group of observations associated therewith and this group ofobservations is referred to as the observation signature. This isdiscussed below with reference to FIG. 7.

Step 113 of method 100 shows assigning a fault code to each of theobservation signatures. Preferably this results in each uniqueobservation signature having or being assigned a unique fault code.Further each repair with the same observation signature is linked to orassociated with the same fault code as will be again reviewed withreference to FIG. 8 below.

FIG. 2 depicts, in a simplified and representative form, a logbook page200 exemplifying an occurrence of historical data in the aircraftindustry. Logbooks break the information into discrepancy 201 andcorrective action 203. Discrepancies are best described as humandescriptions of malfunctions or irregularities irregularities (e.g. F/OELEC TRIM SW ON YOKE INOP FOR NOSE UP TRIM, WORKED OK FOR NOSE DOWNTRIM. CAPT TRIM WORKED BOTH DIRECTIONS OK.). The principles and conceptsdiscussed herein will allow a discrepancy to be normalized by a user ofthese principles and concepts and turned into one to many standardobservations, for example OBSERVATION 1 205, (e.g. 1. F/O STAB TRIM YOKESWITCH NOSE UP INOP; 2. CAPT STAB TRIM YOKE SWITCH NORMAL), and FAULTCODE 206 (e.g. F/O STAB TRIM YOKE SWITCH NOSE UP INOP INFLIGHT, CAPTSTAB TRIM YOKE SWITCH NORMAL). Likewise, a corrective action will benormalized to create a repair for example REPAIR 1 207, such as replacebleed air valve. Each repair also includes a reference to one or moredocuments (DOC REF) such as repair and maintenance manuals.

FIG. 2 shows logbook pages being analyzed to determine the associateddiscrepancy and corrective actions attributes. Each log page contains aunique log page number 209 and aircraft number 211. The discrepancy datawill be normalized into observation text and the observation ATA 213 canusually be derived directly from the log page data. In the aircraftindustry ATA is short for an AIR TRANSPORT ASSOCIATION code that ishierarchical with a 2-digit code referring to an aircraft system and a4-digit code referring to a sub-system. For example, engines and theresub-systems are documented in Chapters 71 to 80. Standard repair text isderived from a synthesis process using an index and provides a list thatallows corrective actions to be grouped. In many cases, deferral(deferred repairs) and associated MEL Doc Ref and part information willalso be found in the corrective action text.

Referring to FIG. 3A through FIG. 3B the creation of StandardObservations (see 109 in FIG. 1) will be discussed and described.Standard observations are derived from the list of systems included inthe Aircraft Maintenance Manual for the particular aircraft. The list ofsystems is combined with position, symptom and condition information foreach system and its fault conditions. Typical system descriptionsutilized in standard observation creation are displayed in a simplifiedand exemplary fashion FIG. 3A and it is understood that the table inFIG. 3A will be extensive for a complex system such as an aircraft. Foreach aircraft type, a list of positions is created to describe thepossible location terminology that will be utilized in the reporting ofobservations. A sample list of typical positions is displayed in FIG.3B. FIG. 3C illustrates a sample of the typical symptoms, such asintermittent, no op etc. encountered for various aircraft systems.Condition information can be very relevant to describing the failuremode of system. Conditions can also be referred to as operational modesand exemplary conditions are depicted in FIG. 3D.

Standard observations are then created or assembled by assigningpositions, symptoms and conditions to a system description. It isrecommended that a tool be developed to assist the end user in definingthe relationships between systems, symptoms, positions and conditions.The result for our exemplary circumstances is shown in FIG. 3E. Thecreation of Standard Repairs (see 105 in FIG. 1) uses the aircraftdocumentation. These are derived directly from the aircraft maintenancemanuals. Each repair is input into the system from a list of repairsavailable for the aircraft from the document table of contents. Repairsare indexed and the four-digit ATA is recorded.

After developing or determining the Standard Repairs and StandardObservation the grouping process for the historical data is undertaken.This grouping process for an aircraft allows collections of similardiscrepancies and corrective actions to be normalized into StandardRepairs and Standard Observations or their respective correspondingstandard textual descriptions for each. For example, as noted above acommon corrective action would be to replace the bleed air valve. Thismay have been written several different ways in the corrective actiontext (i.e. R&R BLD AIR VLV, REPLACED BLEED VLV, etc). While in thissimple sample this process may appear straight forward in the real worldwith lots of actual data this can be become very complicated veryquickly with much less certain results, This will be discussed anddescribed below with reference to the FIG. 4 flow chart of a preferredmethod 400 of grouping or linking historical data such as log pagediscrepancy and corrective action data to Standard Repairs andObservations.

This method 400 analyzes the words occurring in the Standard Repair andStandard Observation descriptions or descriptive sentences to determinehow the words are used within the four-digit ATA structure to create aStandard Phrase List. Standard Repair and Standard Observationdescriptions are parsed or broken into phrases including allcombinations of one to five adjacent words in step 403. To remainconsistent the word “phrase” represents one or more words as shown instep 403. Phrase construction occurs by mapping each word into the 1, 2,3, 4, 5 or more word phrases in which it occurs in each sentence ordescription. These phrases include all n-word sub-sentences that includethe target word in any position. For example, in the sentence “Replacethe Overhead Ventilation Fan”, the following phrases would be generated:

The list of phrases is then filtered as shown at 405 to exclude anyphrase that includes a word that has been predetermined to be of novalue to the word matching process. This is accomplished by maintaininga list of excluded words. Examples of exemplary excluded words wouldlikely include:

To

From

In

A

The

1

2

3

. . .

After filtering the revised list of phrases or remaining phrases wouldnow include the following examples:

Replace

Overhead

Ventilation

Fan

Overhead Ventilation

Ventilation Fan

Overhead Ventilation Fan

Once the phrases have been constructed and filtered, they are analyzedto determine the relative Phrase Importance as shown at 407. Theanalysis includes assigning a weight or Phrase Importance to each of theremaining phrases and thus one or more weights are assigned orcorrespond to each of the plurality of Standard Observations and theplurality of Standard Repairs. The weight corresponds to a relativeimportance in resolving an occurrence of historical data into one of theplurality of Standard Observations and Standard Repairs. The weight is ameasure that combines the frequency of usage of the words in the phrasealong with the degree to which those words are specific to a portion ofthe aircraft as opposed to words that are broadly used. The weight takesinto consideration how often a phrase is used as well as where it isused. Phrases occurring in many ATA chapters many times, for example“Replace”, would score very low in importance while words occurring manytimes in a single ATA chapter would score higher. Additionally,multi-word phrases are scored higher than single-word phrases. This isto account for a multi-word phrase being more valuable than asingle-word phrase and also likely to occur fewer times than asingle-word phrase. These factors are combined to compute a score orweight for each phrase based on the following algorithm:PI _(w) =MWC ^(0.8) *WP ^(1.2/) MWAC ^(0.8*) WS, where

-   -   MWC=the maximum number of times this phrase appears n any        four-digit ATA,    -   WP=Words in Phrase,    -   MWAC=the largest number of occurrences a single word has in a        single ATA, a constant in all specific calculations, and    -   WS=total number of four-digit ATAs in which this phrase occurs.

Finally each occurrence of the historical data or here log pagediscrepancy and corrective action is processed and scored against eachStandard Observation and Standard Repair, respectively. Processing thehistorical data or log pages with discrepancies and corrective actionsresults in or provides a total weight for each of the StandardObservations and the Standard Repairs, where the total weightcorresponds to a sum of weights that correspond to a degree of matchbetween the discrepancies and the corrective actions and descriptions ofthe Standard Observations and the Standard Repairs. More specifically,in this process, each log page or the relevant text there from is parsedand filtered into phrases in a fashion corresponding to the developmentof the standard phrases. The resultant phrases are then compared againsteach individual phrase from the corresponding Standard Observation orStandard Repair for the existence of the phrase as shown at 409. If thephrase exists within the log page, the log page receives a scoreequivalent to the weight or value of the phrase for the correspondingStandard Observation or Standard Repair from which the phraseoriginated. Each of these weights or phrase scores is then summed foreach Standard Repair and Observation. At the end of this process, Logpages contain a total score or weight for each Standard Repair andStandard Observation based on the phrase matching as shown at 411.

Linking Standard Observations to Discrepancies or Standard Repairs toCorrective Actions or grouping the Discrepancies or Corrective Actionsfrom the log pages into, respectively a Standard Observation or aStandard Repair is then accomplished by testing the total weight orscore for the Standard Observation or Standard Repair in question versusthe Discrepancy or Corrective Action described in the log page asdepicted at 413. If the Standard Observation or Standard Repair has alow score or weight (e.g. <20%), then step 415 indicates that a linkbetween the Discrepancy or Corrective Action on the log page andStandard Observation or Standard Repair is unlikely and therefore is notmade. If the total weight is a high score (e.g. > or = to 40%), step 417indicates that a link between the Standard Observation or StandardRepair at issue and the Discrepancy or Corrective Action is probable andtherefore is made. Of course there are scores in between and for thoseinstances step 419 indicates that a linkage will be formed but furtherreview will be made available. Note that this is not all science and ananalyst or engineer should review or overview results and indicatedlinkages. Log page Discrepancies or Corrective Actions with scores overforty percent of the available or possible weight for a Standard Repairare said to be relatively good matches, while those log pages withscores below twenty percent are said to be a poor match. Scores betweentwenty and forty percent are considered a match but made available foradditional review. Entity pairs that score over 40% are automatically“grouped” by the process. Entity pairs that score between 20% and 40%are automatically “linked” by the process. The toolset allows a user toreview this data and reject any automatically generated groups and/orgroup any entity pairs that had been linked.

FIG. 5A and FIG. 5B in tabular and graphical form, respectively,illustrates in a simplified and exemplary manner creating relationshipsbetween standard repairs and standard observation according to theinstant invention. As repairs are normalized to standard descriptionsfor a group of similar repairs, a link to the source logbook pages ismaintained for each corrective action. This provides one or morelinkages or relationships between a REPAIR m and OBSERVATION n asdepicted in the table of FIG. 5A. This information and theserelationships are also shown in the graphical representation in FIG. 5B.This information can be used as the basis for a majority of a faultmodel for a particular aircraft including fault codes and co-occurrencecounts. In any event in FIG. 5B, we note that repairs and observationshave been grouped. Corrective actions on log pages 123, 124 and 125 arefound consistent with Repair 1 while the corrective action on page 126is consistent with Repair 2. The discrepancies written on pages 123 and124 are grouped and normalized to Observation 1 and the discrepancies onpages 125 and 126 are normalized to Observation 2.

FIG. 6 depicts the resultant relationships between observations andrepairs from FIGS. 5A and 5B. Based on the relationships discovered oruncovered by the grouping activity between observations anddiscrepancies as well as corrective actions and repairs from FIG. 5 theobservations or standard observations can be related directly to repairsor standard repairs as shown in FIG. 6. As the data set becomes larger,a comprehensive view of the many to many relationships that existbetween the observations and repairs will become more evident.

FIG. 7 depicts in tabularized form observation signatures suitable foruse in the flow chart of FIG. 1. Repairs are then analyzed to determinethe associated observation signatures. In the case described here,Repair 1 has an observation signature equal to Observation 1 andObservation 2 because both observations occurred with the repair. Repair2 on the other hand only occurred with Observation 2 and will only havethat observation as its observation signature. Assuming a broader dataset, we will begin to see a multitude of repairs with the sameobservation signature.

FIG. 8 depicts a diagram of assigned fault codes resulting from the FIG.1 method. Fault codes are derived from the observation signaturesaccording to the following rules: Each distinct signature is assigned toa distinct fault code and all repairs that have the same signature arelinked to the same fault code. Based on the relationships provided inFIG. 4, the two fault codes illustrated in FIG. 8 can be derived. Table2 in FIG. 7 depicts the data captured during the normalization processand shows a preferred way that the observation signatures are stored forrepairs.

One aspect of the method and preferred embodiment for practicing themethod is a software program comprising software instructions arrangedto run on a processor to process information derived from historicaldata in order to facilitate development of fault codes for complexsystems based on the data. The software program when installed andoperating on a processor that further includes or has access to theappropriate data base results in the processor: grouping the historicaldata into a plurality of observations and a plurality of repairs;analyzing the plurality of repairs to determine associated observationsignatures where each of the observation signatures is one or more ofthe observations; and then assigning a fault code to each observationsignature.

Preferably grouping the historical data into the plurality ofobservations further includes assigning a standard observation tosimilar discrepancies derived from the historical data and assigning astandard repair to similar corrective actions derived from thehistorical data and maintaining a first reference to the historical datawith each standard observation and a second reference to the historicaldata with each standard repair. The process of analyzing the pluralityof repairs further, preferably includes discovering relationshipsbetween one or more of the standard observations and the standardrepairs, the relationship indicated when the first reference to thehistorical data and the second reference to the historical data arecommon between a standard observation and a standard repair. By groupingeach of the standard observations with an associated one of the standardrepairs when the relationship is discovered observation signatures for agiven repair will be found. The procedure of assigning the fault coderesults in each unique observation signature being assigned a uniquefault code and each standard repair with the same observation signaturebeing linked to the same fault code.

The software program may further include instructions for determining aplurality of Standard Observations including a description of each ofthe plurality of Standard Observations and a plurality of StandardRepairs including a description of each of the plurality of StandardRepairs. The process of grouping, preferably, includes assigning one ormore weights to each of the descriptions of the plurality of StandardObservations and each of the descriptions of the plurality of StandardRepairs, each of the weights corresponding to a relative importance inresolving the historical data into one of the plurality of StandardObservations and the plurality of said Standard Repairs. The process ofgrouping may further includes processing the historical data includingdiscrepancies and corrective actions to provide a total weight for eachof the Standard Observations and the Standard Repairs, where the totalweight corresponds to a sum of the weights and to a degree of matchbetween the discrepancies and the corrective actions and descriptions ofthe Standard Observations and the Standard Repairs.

An apparatus embodiment, depicted in FIG. 9, is a computer based system900 for development of fault codes for complex systems, such as aircraftsystems based on historical data. Referring to FIG. 9, the system 900includes a conventional user interface 903, including a keyboard 905 andmonitor 907, that is inter coupled to a computer 909 at an input/output911; The computer is further arranged and constructed to facilitateaccess to a public switched data or telephone network (PSDN or PSTN) 913and thus a plurality of remote users, such as remote user 915.Furthermore the computer, preferably, has access via an I/O port 917 toone or more databases 919 or servers with databases that includeshistorical information, such as aircraft service and maintenanceinformation and manuals 921 and aircraft service and maintenance logs923 of historical actions taken and services performed. These databasesmay be collocated or located at one or more sites that are remote fromthe computer.

The computer 909 includes a processor 925 inter coupled with the otherentities, as shown, and a memory 927. The memory is for storing softwareinstructions 929, such as routines for grouping, analyzing, assigning,etc. as well as conventional operating system routines, and databases931, specifically including the relational database tat is developedincluding fault codes and so on by applying the principles and conceptsherein disclosed. The processor and memory are known components thatoperate according to the novel and inventive principles discussed anddescribed above. For example the processor 909 is for executing softwareinstructions to process information derived from historical data inorder to facilitate the development of the fault codes. This results inthe computer grouping the historical data into a plurality ofobservations and a plurality of repairs, analyzing the plurality ofrepairs to determine associated observation signatures, each of theobservation signatures being one or more of the observations; andassigning a fault code to each observation signature in addition to theother processing steps noted above.

The processes, discussed above, and the inventive principles thereof areintended to and will alleviate problems, such as inconsistentdiagnostics and corrective actions or records thereof caused by priorart maintenance and service procedures. Using these principles ofdefining fault codes will simplify service and maintenance proceduresand save costs associated with inconsistent activities.

Various embodiments of methods, systems, and apparatus for developingstandardized fault codes so as to facilitate and provide for consistentand cost effective maintenance and service programs for complex systemshave been discussed and described. It is expected that these embodimentsor others in accordance with the present invention will have applicationto many complex systems. The disclosed principles and concepts extend tothese systems and specifically to methods employed for maintenance andservice thereby and therein. This disclosure is intended to explain howto fashion and use various embodiments in accordance with the inventionrather than to limit the true, intended, and fair scope and spiritthereof. The invention is defined solely by the appended claims, as maybe amended during the pendency of this application for patent, and allequivalents thereof, when interpreted in accordance with the breadth towhich they are fairly, legally, and equitably entitled.

1. A method of identifying fault conditions for complex systems based onhistorical non-coded data, the method including the steps of: groupingthe historical non-coded data into a plurality of observations and aplurality of repairs; assigning a Standard Repair of a plurality ofStandard Repairs to each of said plurality of repairs and a StandardObservation of Standard Observations to each of said plurality ofobservations, said plurality of Standard Observations including adescription of each of said plurality of Standard Observations and saidplurality of Standard Repairs including a description of each of saidplurality of Standard Repairs, said description of each of saidplurality of Standard Observations and said description of each of saidplurality of Standard Repairs comprising a phrase, said step ofassigning a Standard Repair of a plurality of Standard Repairs to eachof said plurality of repairs and a Standard Observation of a pluralityof Standard Observations to each of said plurality of observationscomprising assigning one or more weights to each of said descriptions ofsaid plurality of Standard Observations and each of said descriptions ofsaid plurality of Standard Repairs and resolving the historicalnon-coded data into one of said plurality of Standard Observations andsaid plurality of said Standard Repairs, each of said one or moreweights indicating a phrase importance and corresponding to a relativeimportance in said resolving said historical data into one of saidplurality of Standard Observations and said plurality of said StandardRepairs; analyzing said plurality of repairs to determine associatedobservation signatures, each of said observation signatures based on oneor more of said plurality of observations; assigning a fault code toeach observation signature, said fault code identifying a faultcondition; and communicating the fault code to a user interface.
 2. Themethod of claim 1 wherein said step of assigning a Standard Repair of aplurality of Standard Repairs to each of said plurality of repairs and aStandard Observation of a plurality of Standard Observations to each ofsaid plurality of observations further includes assigning one of saidplurality of Standard Observations to similar discrepancies derived fromthe historical non-coded data and assigning one of said plurality ofStandard Repairs to similar corrective actions derived from thehistorical non-coded data and maintaining a first reference to thehistorical non-coded data with each said similar discrepancies and asecond reference to the historical non-coded data with each said similarcorrective actions.
 3. The method of claim 2 wherein said step ofanalyzing said plurality of repairs further includes a step ofdiscovering relationships between one or more of said StandardObservations and said Standard Repairs when said first reference to thehistorical non-coded data and said second reference to the historicalnon-coded data are common between said one or more Standard Observationsand said one or more Standard Repairs.
 4. The method of claim 3 whereinsaid step of analyzing said plurality of repairs to determine associatedobservation signatures includes grouping each of said StandardObservation with an associated one of said Standard Repairs when saidrelationship is discovered.
 5. The method of claim 4 wherein said stepof assigning said fault code results in each observation signature beingassigned a unique fault code and each Standard Repair with the sameobservation signature being linked to the same fault code.
 6. The methodof claim 1 wherein said step of analyzing said plurality of repairsfurther includes a step of creating relationships between said pluralityof observations and said plurality of repairs utilizing the historicalnon-coded data that is common between an observation and a repair. 7.The method of claim 1 wherein said step of analyzing said plurality ofrepairs to determine associated observation signatures includes groupingeach of said plurality of observations with an associated one of saidplurality of repairs.
 8. The method of claim 1 wherein said step ofassigning said fault code results in each observation signature beingassigned a unique fault code and each repair with the same observationsignature being linked to the same fault code.
 9. The method of claim 1Wherein said step of assigning a Standard Repair of a plurality ofStandard Repairs to each of said plurality of repairs and a StandardObservation of a plurality of Standard Observations to each of saidplurality of observations further includes a step of processing thehistorical non-coded data including discrepancies and corrective actionsto provide a total weight for each of said Standard Observations andsaid Standard Repairs, said total weight corresponding to a sum of saidweights that correspond to a degree of match between one of saiddiscrepancies and said corrective actions and descriptions of one ofsaid Standard Observations and said Standard Repairs.
 10. Acomputer-readable medium comprising a software program comprisingsoftware instructions arranged to run on a processor to processinformation derived from historical non-coded data in order to identifyfault conditions for complex systems based on the historical non-codeddata, the software program when installed and operating on a processorresulting in the processor: grouping the historical non-coded data intoa plurality of observations and a plurality of repairs; assigning aStandard Repair of a plurality of Standard Repairs to each of saidplurality of repairs and a Standard Observation of a plurality ofStandard Observations to each of said plurality of observations, saidplurality of Standard Observations including a description of each ofsaid plurality of Standard Observations and said plurality of StandardRepairs including a description of each of said plurality of StandardRepairs, said description of each of said plurality of StandardObservations and said description of each of said plurality of StandardRepairs comprising a phrase, said step of assigning a Standard Repair ofa plurality of Standard Repairs to each of said plurality of repairs anda Standard Observation of a plurality of Standard Observations to eachof said plurality of observations comprising assigning one or moreweights to each of said descriptions of said plurality of StandardObservations and each of said descriptions of said plurality of StandardRepairs and resolving said historical non-coded data into one of saidplurality of Standard Observations and said plurality of said StandardRepairs, each of said one or more weights indicating a phrase importanceand corresponding to a relative importance in said resolving saidhistorical non-coded data into one of said plurality of StandardObservations and said plurality of said Standard Repairs; analyzing saidplurality of repairs to determine associated observation signatures,each of said observation signatures based on one or more of saidplurality of observations; assigning a fault code to each observationsignature, said fault code identifying a fault condition; andcommunicating the fault code to a user interface.
 11. The softwareprogram of claim 10 wherein said step of assigning a Standard Repair ofa plurality of Standard Repairs to each of said plurality of repairs anda Standard Observation of a plurality of Standard Observations to eachof said plurality of observations further includes assigning one of saidplurality of Standard Observations to similar discrepancies derived fromthe historical non-coded data and assigning one of said plurality ofStandard Repairs to similar corrective actions derived from thehistorical non-code data and maintaining a first reference to thehistorical non-coded data with each said similar discrepancies and asecond reference to the historical non-coded data with each said similarcorrective actions.
 12. The software program of claim 11 wherein saidanalyzing said plurality of repairs further includes discoveringrelationships between one or more of said Standard Observations and saidStandard Repairs when said first reference to the historical non-codeddata and said second reference to the historical non-coded data arecommon between said one or more Standard Observations and said one ormore Standard Repairs.
 13. The software program of claim 12 wherein saidstep of analyzing said plurality of repairs to determine associatedobservation signatures includes grouping each of said StandardObservations with an associated one of said Standard Repairs when saidrelationship is discovered.
 14. The software program of claim 13 whereinsaid assigning said fault code results in each observation signaturebeing assigned a unique fault code and each Standard Repair with thesame observation signature being linked to the same fault code.
 15. Thesoftware program of claim 10 wherein said analyzing said plurality ofrepairs further includes a step of creating relationships between saidplurality of observations and said plurality of repairs utilizing thehistorical non-coded data that is common between an observation and arepair.
 16. The software program of claim 11 wherein said analyzing saidplurality of repairs to determine associated observation signaturesincludes grouping each of said plurality of observations with anassociated one of said plurality of repairs.
 17. The software program ofclaim 10 wherein said assigning said fault code results in eachobservation signature being assigned a unique fault code and each repairwith the same observation signature being linked to the same fault code.18. The software program of claim 10 wherein said step of assigning aStandard Repair of a plurality of Standard Repairs to each of saidplurality of repairs and a Standard Observation of a plurality ofStandard Observations to each of said plurality of observations furtherincludes a step of processing the historical non-coded data includingdiscrepancies and corrective actions to provide a total weight for eachof said Standard Observations and said Standard Repairs, said totalweight corresponding to a sum of said weights that correspond tot degreeof match between one of said discrepancies and said corrective actionsand descriptions of one of said Standard Observations and said StandardRepairs.
 19. A computer based system for development of fault codes foraircraft systems based on historical non-coded data lacking assignedfault codes, the system comprising in combination: a user interface; acomputer, coupled to the user interface, having memory, for storingsoftware instructions and databases, and a processor for: executing saidsoftware instructions to process information derived from historicaldata in order to facilitate the development of the fault codes, thesoftware instructions resulting in the computer: grouping the historicalnon-coded data into a plurality of observations and a plurality ofrepairs; assigning a Standard Repair of a plurality of Standard Repairsto each of said plurality of repairs and a Standard Observation of aplurality of Standard Observations to each of said plurality ofobservations, said plurality of Standard Observations including adescription of each of said plurality of Standard Observations and saidplurality of Standard Repairs including a description of each of saidplurality of Standard Repairs, said description of each of saidplurality of Standard Observations and said description of each of saidplurality of Standard Repairs comprising a phrase, said step ofassigning a Standard Repair of a plurality of Standard Repairs to eachof said plurality of repairs and a Standard Observation of a pluralityof Standard Observations to each of said plurality of observationscomprising assigning one or more weights to each of said descriptions ofsaid plurality of Standard Observations and each of said descriptions ofsaid plurality of Standard Repairs and resolving said historicalnon-coded data into one of said plurality of Standard Observations andsaid plurality of said Standard Repairs, each of said one or moreweights indicating a phrase importance and corresponding to a relativeimportance in said resolving said historical non-coded data into one ofsaid plurality of Standard Observations and said plurality of saidStandard Repairs; analyzing said plurality of repairs to determineassociated observation signatures, each of said observation signaturesbased on one or more of said plurality of observations; assigning afault code to each observation signature; and communication the faultcode to a user interface.
 20. The computer based system of claim 19wherein said assigning a Standard Repair of a plurality of StandardRepairs to each of said plurality of repairs and a Standard Observationof a plurality of Standard Observations to each of said plurality ofobservations further includes assigning one of said plurality ofStandard Observations to similar discrepancies derived from diehistorical non-coded data and assigning one of said plurality ofStandard Repairs to similar corrective actions derived from thehistorical non-coded data and maintaining a first reference to thehistorical non-coded data with each said similar discrepancies and asecond reference to the historical non-coded data with each said similarcorrective actions.
 21. The computer based system of claim 19 whereinsaid analyzing said plurality of repairs further includes creatingrelationships between said plurality of observations and said pluralityof repairs utilizing the historical non-coded data that is commonbetween an observation and a repair.
 22. The computer based system ofclaim 19 wherein said analyzing said plurality of repairs to determineassociated observation signatures includes grouping each of saidplurality of observations with an associated one of said plurality ofrepairs.
 23. The computer based system of claim 19 wherein saidassigning said fault code results in each observation signature beingassigned a unique fault code and each repair with the same observationsignature being linked to the same fault code.
 24. The computer basedsystem of claim 19 wherein said assigning a Standard Repair of aplurality of Standard Repairs to each of said plurality of repairs and aStandard Observation of a plurality of Standard Observations to each ofsaid plurality of observations further includes processing thehistorical non-coded data including discrepancies and corrective actionsto provide a total weight for each of said Standard Observations andsaid Standard Repairs, said total weight corresponding to a sum of saidweights that correspond to a degree of match between one of saiddiscrepancies and said corrective actions and descriptions of one ofsaid Standard Observations and said Standard Repairs.